package com.rightsidetech.activity.dto.request.gift;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Pattern;
import java.io.Serializable;
import java.util.Date;
import java.util.List;

@Data
public class ActGiftSaveReq implements Serializable {

    @ApiModelProperty(value = "活动名称",required = true)
    @Pattern(regexp = "[\\u4e00-\\u9fa5a-zA-Z0-9]{0,30}+",message = "活动名称不支持特殊字符最大长度为30")
    @NotBlank(message = "活动名称不允许为空")
    private String eventName;

    @ApiModelProperty(value = "活动开始时间 yyyy-MM-dd",required = true)
    @NotNull(message = "活动开始时间不可为空")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date startTime;

    @ApiModelProperty(value = "活动结束时间 yyyy-MM-dd",required = true)
    @NotNull(message = "活动开始时间不可为空")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date endTime;

    @ApiModelProperty("大区id")
    private List<Long> areaIds;

    @ApiModelProperty("代理商id")
    private List<Long> agentIds;

    @ApiModelProperty(value = "门店id")
//    @NotEmpty(message = "门店id不为空")
    private List<Long> storeIds;

    @ApiModelProperty(value = "换购活动绑定商城分类",required = true)
    @NotEmpty(message = "换购活动绑定商城分类不允许为空")
    private List<ActGiftMallTypeReq> giftMallType;

    /*@ApiModelProperty(value = "换购商品绑定数量",required = true)
    @NotEmpty(message = "换购商品绑定数量不允许为空")
    private List<ActGiftNumberReq> giftNum;*/
}
